GRE Over IPSec配置及抓包分析

您所在的位置:网站首页 wireshark ipsec协商过程 GRE Over IPSec配置及抓包分析

GRE Over IPSec配置及抓包分析

2024-06-26 15:56| 来源: 网络整理| 查看: 265

在这里插入图片描述 1、配置 tunnel 逻辑接口时,需要指定GRE隧道使用的源地址及目的地址。配置到对端网络内网网段的路由时,下一跳为tunnel接口。 2、配置GRE Over IPSec 时,与单独配置GRE和IPSec没有太大的区别。唯一需要注意的是,通过ACL定义需要 保护的数据流时,不能再以总部和分部内部私网地址为匹配条件,而是必须匹配经过GRE封装后的报文,即定义报文的源地址为GRE隧道的源地址,目的地址为GRE隧道的目的地址。

实验拓扑

在这里插入图片描述

网络环境描述

1、网络A属于10.1.1.0/24子网,与A的1/0/3接口相连 2、网络B属于10.1.2.0/24子网,与B的1/0/3接口相连 3、防火墙A和B之间的路由可达 通过组网实现以下需求: NGFW_A与NGFW_B之间建立GRE Over IPSec隧道,使网络A和网络B之间可以实现信息的加密传输。

配置过程 1、首先配置好中间的Internet部分,这里就不演示了 2、配置GRE Tunnel接口

建议在配置的时候,将tunnel接口和隧道源端口(本段与公网连接的物理接口)加入到同一安全区域。如果他们加入了不同的安全区域,需要配置安全策略,使两个安全区域能够互相访问。 NGFW_A防火墙配置: 1)将接口加入安全区域,并配置域间策略,以保证网络通信正常(略) 2)配置GRE隧道接口

# interface Tunnel0/0/0 ip address 10.3.1.1 255.255.255.0 tunnel-protocol gre source 1.1.3.1 destination 1.1.5.1 #

3)配置Tunnel接口转发路由

[NGFW_A]ip route-static 10.1.2.0 24 Tunnel 0/0/0

NGFW_B防火墙 配置: 1)将接口加入安全区域,并配置域间策略,以保证网络通信正常(略) 2)配置GRE隧道接口

# interface Tunnel0/0/0 ip address 10.3.1.2 255.255.255.0 tunnel-protocol gre source 1.1.5.1 destination 1.1.3.1 #

3)配置Tunnel接口转发路由

[NGFW_B]ip route-static 10.1.1.0 24 Tunnel 0/0/0 3、配置IPSec VPN

NGFW_A防火墙配置: 1)配置ACL,定义需要保护的数据流:

[NGFW_A]acl 3000 [NGFW_A-acl-adv-3000]rule permit ip source 1.1.3.1 0 destination 1.1.5.1 0

2)配置IKE Peer

[NGFW_A]ike peer FW_B v1 //配置IKE第一阶段的协商 [NGFW_A-ike-peer-FW_B]pre-shared-key cipher 12345 //配置预共享秘钥为12345 [NGFW_A-ike-peer-FW_B]remote-address 1.1.5.1 //对方的IP地址 [NGFW_A-ike-peer-FW_B]exchange-mode main //设置模式为主模式(默认)

3)配置IPSec Proposal

[NGFW_A]ipsec proposal p1 //配置第二阶段变换集 可以就只配置上面这一条,那它的IPSec提议会使用默认的;当然,也可以自行配置,如下: [NGFW_A-ipsec-proposal-p1]encapsulation-mode tunnel //设置封装模式为隧道模式(默认) [NGFW_A-ipsec-proposal-p1]esp authentication-algorithm sha1 //设置esp的认证算法为sha1(默认为MD5) [NGFW_A-ipsec-proposal-p1]esp encryption-algorithm des //设置esp的加密算法为des(默认) [NGFW_A-ipsec-proposal-p1]transform esp //设置传输协议为esp

4)配置IPSec Policy

[NGFW_A]ipsec policy policy1 1 isakmp //配置调用策略 [NGFW_A-ipsec-policy-isakmp-policy1-1]security acl 3000 //调用加密数据acl [NGFW_A-ipsec-policy-isakmp-policy1-1]ike-peer FW_B //调用第一阶段协商策略 [NGFW_A-ipsec-policy-isakmp-policy1-1]proposal p1 //调用第二阶段变换集 [NGFW_A-ipsec-policy-isakmp-policy1-1]q [NGFW_A]int GigabitEthernet 1/0/1 //进入接口视图 [NGFW_A-GigabitEthernet1/0/1]ipsec policy policy1 //调用策略

NGFW_B防火墙配置: 1)配置ACL,定义需要保护的数据流:

[NGFW_B]acl 3000 [NGFW_B-acl-adv-3000]rule permit ip source 1.1.5.1 0 destination 1.1.3.1 0

2)配置IKE Peer

[NGFW_B]ike peer FW_A v1 //配置IKE第一阶段的协商 [NGFW_B-ike-peer-FW_A]pre-shared-key cipher 12345 [NGFW_B-ike-peer-FW_A]remote-address 1.1.3.1 [NGFW_B-ike-peer-FW_A]exchange-mode main

3)配置IPSec Proposal

[NGFW_B]ipsec proposal p1 //配置第二阶段变换集 可以就只配置上面这一条,那它的IPSec提议会使用默认的;当然,也可以自行配置,如下: [NGFW_B-ipsec-proposal-p1]encapsulation-mode tunnel [NGFW_B-ipsec-proposal-p1]esp authentication-algorithm sha1 [NGFW_B-ipsec-proposal-p1]esp encryption-algorithm des [NGFW_B-ipsec-proposal-p1]transform esp

4)配置IPSec Policy

[NGFW_B]ipsec policy policy1 1 isakmp //配置调用策略 [NGFW_B-ipsec-policy-isakmp-policy1-1]security acl 3000 [NGFW_B-ipsec-policy-isakmp-policy1-1]ike-peer FW_A [NGFW_A-ipsec-policy-isakmp-policy1-1]proposal p1 [NGFW_B-ipsec-policy-isakmp-policy1-1]q [NGFW_B]int GigabitEthernet 1/0/1 [NGFW_B-GigabitEthernet1/0/1]ipsec policy policy1 使用wireshark抓包进行分析【重要】

在进行抓包分析之前,需要对IPSec有一定的了解,建议看下面链接部分内容: IPSec详解

IKE协商阶段 在NGFW_B的 1/0/1接口抓包分析:

【注意】如果需要看到具体的IPSec协商过程,需要重启NGFW_B来观察其协商过程 在这里插入图片描述 通过第一阶段和第二阶段的协商可以看出: 第一阶段:主模式,需要交互消息6次,图中刚好是6个包。 第二阶段:快速模式。需要交互消息3次,图中刚好有3个第二阶段协商的报文。

第一阶段(主模式)

在这里插入图片描述

主模式交互——消息1

第一个消息由隧道的发起者发起,携带了如这样一些参数,如加密机制-DES,散列机制-SHA,Diffie-Hellman组-2,认证机制-预共享 DLAN6.25开始支持IKEv2 在这里插入图片描述

主模式交互——消息2

消息2是应答方对发送方信息的应答,当应答方查找SPD查找到发送方相关的策略后,将自己的信息同样发送给对端,当然,应答方在发送传输集时将会生成自己Cookie并添加到数据包中,数据包信息如下: 在这里插入图片描述 可以看到,双方交流的都是自己含有的配置信息,如果双方信息一致,则开始进行下一步传输。

第1、2个包里重点在于ISAKMP策略的协商,这是为后面能在一个安全的环境之下协商IPSEC SA策略打下基础,因为这些策略直接提供对第二阶段的IPSEC SA策略协商的加密保护;

主模式交互——消息3

当完成了第一步骤双方的策略协商后,则开始进行第二步骤DH公共值交换,随数据发送的还包含辅助随机数,用户生成双方的加密密钥。消息3的数据包信息如下: 在这里插入图片描述 可以看到在数据包中,当前载荷类型属于密钥交换,载荷为DH公共值和Nonce随机数。都属于明文,未加密

主模式交互——消息4

应答方同样将本端的DH公共值和Nonce随机数发送给对端,通过消息4传输: 在这里插入图片描述 在3、4个包里,重点在于通过DH算法产生和传递进行第一阶段认证的密钥材料,这些材料会让两端的设备产生一对相同的密钥,这个产生的密钥就是第一阶段相互间真实的认证密钥,这点很重要。

主模式交互——消息5

第五条消息由发起者向响应者发送,主要是为了验证对端就是自己想要与之通信的对端。这可以通过预共享、数字签名、加密临时值来实现

双方交换DH公共值后,结合随机数生成一系列的加密密钥,用于双方加密、校验,同时生成密钥后,将公共密钥和本端身份信息等进行hash,hash值传输给对端进行验证设备身份。发送方通过消息5发送给接收方,可以看到载荷类型为身份验证载荷,所携带的信息经过加密,无法查看相关信息 在这里插入图片描述

主模式交互——消息6

第六条消息由响应者向发起者发送,主要目的和第五条一样。 在这六条消息过后,也就是验证一旦通过,就进入了IKE第二阶段:快速模式 在这里插入图片描述 在5、6个包里,就用前面产生的认证密钥进行相互认证,当相互认证通过,那么为第二阶段协商IPSEC SA策略的安全通道立即打开,两端的VPN服务器会用第一阶段协商的安全策略对第二阶段协商的IPSEC SA策略进行安全加密和认证; 同时要注意,从第5个包起,后面的所有包将会加密,只不过不同的是,第5、6个包和第二阶段协商的3个包都是通过第一阶段协商的安全策略进行加密的,而用户通信的数据则是用第二阶段协商的IPSEC SA策略进行加密和认证的,至于两者的密钥是否一样,就要看在第二阶段是否定义了PFS策略,如果应用了,那第二阶段的密钥将与第一阶段的不同,否则两者的密钥是一样的。

第二阶段

ISAKMP/IKE阶段2只有一种信息交换模式——快速模式,它定义了受保护数据连接是如何在两个IPSEC对等体之间构成的。 深信服的标准IPSEC 有几对的出站入站,在DLAN运行状态里面就会显示几条连接,每一对快速模式交互的包都是三个,第一个包由主连接发起方发起响应

快速模式有两个主要的功能: 1.协商安全参数来保护数据连接。 2.周期性的对数据连接更新密钥信息。 第二阶段的效果为协商出IPSec 单向SA,为保护IPsec数据流而创建。第二阶段整个协商过程受第一阶段ISAKMP/IKE SA保护。

第二阶段的所有数据包都进行了加密,抓取的数据如下: 在这里插入图片描述 阶段2 使用“快速模式”交换。快速模式交换通过三条消息建立IPsec SA。这3个包主要用来协商用于加密用户数据的安全策略(只有认证和加密方法和对应算法): 前两条消息协商IPsec SA的各项参数值,并生成IPsec使用的密钥; 第二条消息还为响应方提供在场的证据; 第三条消息为发起方提供在场的证据。 当第二阶段协商完毕之后,第一阶段的策略将暂时不会被使用,直到有新的VPN连接建立时或IPSEC SA加密密钥超时时,才会用第一阶段的策略重新生成并传递新的加密数据和认证的密钥。

SANGFOR设备上称PFS为“密钥完美向前保密” 在IPSEC协商的第一阶段,通过DH算法进行了密钥的交互,并生成了加密密钥。如果不使用PFS,则第二阶段的加密密钥会根据第一阶段的密钥自动生成。使用了PFS,则第二阶段要重新通过DH算法协商一个新的加密密钥,从而提高了数据的安全性。

数据传输阶段

在这里插入图片描述 数据传输阶段是通过AH或者ESP通信协议进行数据的传输,这里为ESP。 数据传输建立在网络层。 在这里插入图片描述 可以看到,报文中的ESP协议中只包含两个字段 ESP SPI 和 ESP Sequence 在这里插入图片描述



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3